Automatic Proof of Refinement among Design Patterns using the TLC Model Checker

نویسنده

  • TOUFIK TAIBI
چکیده

Design patterns are reuse artifacts meant to improve the quality of software designs as well as the productivity of designers. Patterns (and their relationships) are mostly described in an informal fashion which leads to ambiguity and limits tools support. This has worsened with the growing number of well-established and candidate patterns. This paper discusses how to formally specify the "solution element" of patterns and their relationships using TLA+, the formal specification language of Temporal Logic of Actions (TLA). The paper first classifies and formally defines the most common relationships between patterns. Then, it shows how to automatically proof the existence of a "refines" relationship between patterns using TLC− the TLA+ Model Checker.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Stepwise Refinement Validation of Design Patterns Formalized in TLA+ using the TLC Model Checker

Spec ∆ = Abstract !Spec This is P ’s specification theorem Spec ⇒ AbstractSpec Spec is Q ’s specification Figure 2: Structure of a TLA+ refinement of patterns

متن کامل

Design Verification for Sequential Systems at Various Abstraction Levels

ion and Refinement for Design Verification at Logic Level Abstraction refinement has recently emerged as an enabling technology for applying model checking techniques to large real-life designs. Previous techniques for abstraction refinement work on static abstractions, in that the abstract model produced by the abstraction algorithm is not modified by the downstream model checking. We propose ...

متن کامل

Automatic Flow Analysis for Event-B

In Event-B a system is developed using refinement. The language is based on a relatively small core; in particular there is only a very small number of substitutions. This results in much simpler proof obligations, that can be handled by automatic tools. However, the downside is that, in case of software development, structural information is not explicitly available but hidden in the chain of ...

متن کامل

A Fully Verified Executable LTL Model Checker

We present an LTL model checker whose code has been completely verified using the Isabelle theorem prover. The checker consists of over 4000 lines of ML code. The code is produced using the Isabelle Refinement Framework, which allows us to split its correctness proof into (1) the proof of an abstract version of the checker, consisting of a few hundred lines of “formalized pseudocode”, and (2) a...

متن کامل

Translating B to TLA + for Validation with TLC

The state-based formal methods B and TLA share the common base of predicate logic, arithmetic and set theory. However, there are still considerable differences, such as the way to specify state transitions, the different approaches to typing, and the available tool support. In this paper, we present a translation from B to TLA to validate B specifications using the model checker TLC. The transl...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007